Micron Document
<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>Encrypted Media Extensions</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/Encrypted_Media_Extensions"> <link href="./mw/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Encrypted_Media_Extensions rootpage-Encrypted_Media_Extensions skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">Encrypted Media Extensions</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr">
<style data-mw-deduplicate="TemplateStyles:r1295905060">
/* start https://en.wikipedia.org/ */


.mw-parser-output .infobox-subbox{padding:0;border:none;margin:-3px;width:auto;min-width:100%;font-size:100%;clear:none;float:none;background-color:transparent}.mw-parser-output .infobox-3cols-child{margin:auto}.mw-parser-output .infobox .navbar{font-size:100%}@media screen{html.skin-theme-clientpref-night .mw-parser-output .infobox-full-data:not(.notheme)>div:not(.notheme)[style]{background:#1f1f23!important;color:#f8f9fa}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .infobox-full-data:not(.notheme)>div:not(.notheme)[style]{background:#1f1f23!important;color:#f8f9fa}}@media(min-width:640px){body.skin--responsive .mw-parser-output .infobox-table{display:table!important}body.skin--responsive .mw-parser-output .infobox-table>caption{display:table-caption!important}body.skin--responsive .mw-parser-output .infobox-table>tbody{display:table-row-group}body.skin--responsive .mw-parser-output .infobox-table th,body.skin--responsive .mw-parser-output .infobox-table td{padding-left:inherit;padding-right:inherit}}


/* end https://en.wikipedia.org/ */
</style><table class="infobox hproduct"><caption class="infobox-title fn">EME</caption><tbody><tr><td colspan="2" class="infobox-subheader">Encrypted Media Extensions</td></tr><tr><th scope="row" class="infobox-label">Abbreviation</th><td class="infobox-data">EME, encrypted-media</td></tr><tr><th scope="row" class="infobox-label">Native name</th><td class="infobox-data"><div class="nickname" lang="en">Encrypted Media Extensions</div></td></tr><tr><th scope="row" class="infobox-label">Status</th><td class="infobox-data"><a href="World_Wide_Web_Consortium#W3C_recommendation_(REC)" title="World Wide Web Consortium">W3C Recommendation</a></td></tr><tr><th scope="row" class="infobox-label">Year started</th><td class="infobox-data">2013<span style="display: none;">&nbsp;(<span class="bday dtstart published updated itvstart">2013</span>)</span></td></tr><tr><th scope="row" class="infobox-label">First published</th><td class="infobox-data">May&nbsp;10,&nbsp;2013<span style="display: none;">&nbsp;(<span class="bday dtstart published updated itvstart">2013-05-10</span>)</span><sup id="cite_ref-eme-history_1-0" class="reference"><a href="#cite_note-eme-history-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup></td></tr><tr><th scope="row" class="infobox-label">Latest version</th><td class="infobox-data">2017-09-18<br>September&nbsp;18, 2017<span style="display:none">&nbsp;(<span class="bday dtstart published updated">2017-09-18</span>)</span><sup id="cite_ref-EME-2017_2-0" class="reference"><a href="#cite_note-EME-2017-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup></td></tr><tr><th scope="row" class="infobox-label">Preview version</th><td class="infobox-data">Editor's Draft<br>March&nbsp;20, 2021<span style="display:none">&nbsp;(<span class="bday dtstart published updated">2021-03-20</span>)</span><sup id="cite_ref-eme-draft_3-0" class="reference"><a href="#cite_note-eme-draft-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup></td></tr><tr><th scope="row" class="infobox-label">Organization</th><td class="infobox-data"><style data-mw-deduplicate="TemplateStyles:r1126788409">
/* start https://en.wikipedia.org/ */


.mw-parser-output .plainlist ol,.mw-parser-output .plainlist ul{line-height:inherit;list-style:none;margin:0;padding:0}.mw-parser-output .plainlist ol li,.mw-parser-output .plainlist ul li{margin-bottom:0}


/* end https://en.wikipedia.org/ */
</style><div class="plainlist">
<ul><li><abbr title="World Wide Web Consortium"><a href="World_Wide_Web_Consortium" title="World Wide Web Consortium">W3C</a></abbr></li>
<li><a href="Google" title="Google">Google</a></li>
<li><a href="Microsoft" title="Microsoft">Microsoft</a></li>
<li><a href="Netflix" title="Netflix">Netflix</a></li></ul>
</div><sup id="cite_ref-EME-2017_2-1" class="reference"><a href="#cite_note-EME-2017-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-eme-draft_3-1" class="reference"><a href="#cite_note-eme-draft-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup></td></tr><tr><th scope="row" class="infobox-label">Committee</th><td class="infobox-data"><div class="plainlist">
<ul><li><a href="HTML_Working_Group" title="HTML Working Group">HTML Media Extensions Working Group</a><sup id="cite_ref-EME-2017_2-2" class="reference"><a href="#cite_note-EME-2017-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup></li>
<li>Media Working Group<sup id="cite_ref-eme-draft_3-2" class="reference"><a href="#cite_note-eme-draft-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup></li></ul>
</div></td></tr><tr><th scope="row" class="infobox-label">Editors</th><td class="infobox-data"><div class="plainlist">
<ul><li>Joey Parrish<sup id="cite_ref-eme-draft_3-3" class="reference"><a href="#cite_note-eme-draft-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup></li>
<li>Greg Freedman<sup id="cite_ref-eme-draft_3-4" class="reference"><a href="#cite_note-eme-draft-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup></li></ul>
<div class="collapsible-list mw-collapsible mw-collapsed" style="text-align: left;">
<div style="line-height: 1.6em; font-weight: bold;"><div>Former editors</div></div>
<ul class="mw-collapsible-content" style="margin-top: 0; margin-bottom: 0; line-height: inherit; list-style: none; margin-left: 0;"><li style="line-height: inherit; margin: 0">
<ul><li>David Dorwin (until September&nbsp;2019<span style="display: none;">&nbsp;(<span class="dtend itvend">2019-09</span>)</span>)</li>
<li>Jerry Smith (until September&nbsp;2017<span style="display: none;">&nbsp;(<span class="dtend itvend">2017-09</span>)</span>)</li>
<li>Mark Watson (until September&nbsp;2017<span style="display: none;">&nbsp;(<span class="dtend itvend">2017-09</span>)</span>)</li>
<li>Adrian Bateman (until May&nbsp;2014<span style="display: none;">&nbsp;(<span class="dtend itvend">2014-05</span>)</span>)</li></ul>
</li></ul>
</div><sup id="cite_ref-EME-2017_2-3" class="reference"><a href="#cite_note-EME-2017-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-eme-draft_3-5" class="reference"><a href="#cite_note-eme-draft-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup>
</div></td></tr><tr><th scope="row" class="infobox-label">Base standards</th><td class="infobox-data"><div class="plainlist">
<ul><li><a href="Media_Source_Extensions" title="Media Source Extensions">Media Source Extensions</a></li>
<li><a href="Dynamic_Adaptive_Streaming_over_HTTP" title="Dynamic Adaptive Streaming over HTTP">MPEG-DASH</a></li>
<li><a href="MPEG_Common_Encryption" title="MPEG Common Encryption">MPEG-CENC</a></li></ul>
</div></td></tr><tr><th scope="row" class="infobox-label">Domain</th><td class="infobox-data"><a href="Digital_rights_management" title="Digital rights management">Digital rights management</a></td></tr><tr><th scope="row" class="infobox-label">Website</th><td class="infobox-data"><div class="plainlist">
<ul><li><b>Latest version</b>: <span class="url"><a rel="nofollow" class="external text" href="https://www.w3.org/TR/encrypted-media/">www<wbr>.w3<wbr>.org<wbr>/TR<wbr>/encrypted-media<wbr>/</a></span></li>
<li><b>Editor's draft</b>: <span class="url"><a rel="nofollow" class="external text" href="https://w3c.github.io/encrypted-media/">w3c<wbr>.github<wbr>.io<wbr>/encrypted-media<wbr>/</a></span></li></ul>
</div></td></tr></tbody></table>
<p><b>Encrypted Media Extensions</b> (<b>EME</b>) is a <a href="W3C" class="mw-redirect" title="W3C">W3C</a> specification for providing a communication channel between <a href="Web_browser" title="Web browser">web browsers</a> and the Content Decryption Module (CDM) software which implements <a href="Digital_rights_management" title="Digital rights management">digital rights management</a> (DRM).<sup id="cite_ref-EME-2017_2-4" class="reference"><a href="#cite_note-EME-2017-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> This allows the use of <a href="HTML_video" title="HTML video">HTML video</a> to play back DRM-wrapped content such as <a href="Streaming_video" class="mw-redirect" title="Streaming video">streaming video</a> services without the use of heavy third-party media plugins like <a href="Adobe_Flash" title="Adobe Flash">Adobe Flash</a> or <a href="Microsoft_Silverlight" title="Microsoft Silverlight">Microsoft Silverlight</a> (both discontinued). The use of a third-party <a href="Key_management" title="Key management">key management system</a> may be required, depending on whether the publisher chooses to scramble the keys.
</p><p>EME is based on the <a href="Media_Source_Extensions" title="Media Source Extensions">Media Source Extensions</a> (MSE) specification,<sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup> which enables adaptive bitrate streaming in HTML audio and video, e.g. using <a href="MPEG-DASH" class="mw-redirect" title="MPEG-DASH">MPEG-DASH</a> with <a href="MPEG_Common_Encryption" title="MPEG Common Encryption">MPEG-CENC</a> protected content.<sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-6" class="reference"><a href="#cite_note-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup>
</p><p>EME has been highly controversial because it places a necessarily <a href="Proprietary_software" title="Proprietary software">proprietary</a>, closed decryption component which requires per-browser licensing fees into what might otherwise be an entirely open and free software ecosystem.<sup id="cite_ref-:0_7-0" class="reference"><a href="#cite_note-:0-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-8" class="reference"><a href="#cite_note-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup> On July 6, 2017, W3C publicly announced its intention to publish an EME web standard,<sup id="cite_ref-9" class="reference"><a href="#cite_note-9"><span class="cite-bracket">[</span>9<span class="cite-bracket">]</span></a></sup> and did so on September 18.<sup id="cite_ref-EME-2017_2-5" class="reference"><a href="#cite_note-EME-2017-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> On the same day, the <a href="Electronic_Frontier_Foundation" title="Electronic Frontier Foundation">Electronic Frontier Foundation</a>, who joined in 2014 to participate in the decision making,<sup id="cite_ref-10" class="reference"><a href="#cite_note-10"><span class="cite-bracket">[</span>10<span class="cite-bracket">]</span></a></sup> published an open letter resigning from W3C.<sup id="cite_ref-11" class="reference"><a href="#cite_note-11"><span class="cite-bracket">[</span>11<span class="cite-bracket">]</span></a></sup>
</p>
<meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="Support">Support</h2></div>
<p>In April 2013, on the <a href="Chromebook" title="Chromebook">Samsung Chromebook</a>, <a href="Netflix" title="Netflix">Netflix</a> became the first company to offer HTML video using EME.<sup id="cite_ref-12" class="reference"><a href="#cite_note-12"><span class="cite-bracket">[</span>12<span class="cite-bracket">]</span></a></sup>
</p><p>As of 2016, the Encrypted Media Extensions interface has been implemented in the <a href="Google_Chrome" title="Google Chrome">Google Chrome</a>,<sup id="cite_ref-13" class="reference"><a href="#cite_note-13"><span class="cite-bracket">[</span>13<span class="cite-bracket">]</span></a></sup> <a href="Internet_Explorer" title="Internet Explorer">Internet Explorer</a>,<sup id="cite_ref-14" class="reference"><a href="#cite_note-14"><span class="cite-bracket">[</span>14<span class="cite-bracket">]</span></a></sup> <a href="Safari_(web_browser)" title="Safari (web browser)">Safari</a>,<sup id="cite_ref-15" class="reference"><a href="#cite_note-15"><span class="cite-bracket">[</span>15<span class="cite-bracket">]</span></a></sup> <a href="Firefox" title="Firefox">Firefox</a>,<sup id="cite_ref-pcw-f38drm_16-0" class="reference"><a href="#cite_note-pcw-f38drm-16"><span class="cite-bracket">[</span>16<span class="cite-bracket">]</span></a></sup> and <a href="Microsoft_Edge" title="Microsoft Edge">Microsoft Edge</a><sup id="cite_ref-17" class="reference"><a href="#cite_note-17"><span class="cite-bracket">[</span>17<span class="cite-bracket">]</span></a></sup> browsers.
</p><p>While backers and the developers of the Firefox web browser were hesitant in implementing the protocol for ethical reasons due to its dependency on proprietary code,<sup id="cite_ref-mozilla_18-0" class="reference"><a href="#cite_note-mozilla-18"><span class="cite-bracket">[</span>18<span class="cite-bracket">]</span></a></sup> Firefox introduced EME support on Windows platforms in May 2015, originally using <a href="Adobe_Inc." title="Adobe Inc.">Adobe</a>'s Primetime DRM library, later replaced with the <a href="Widevine" title="Widevine">Widevine</a> library (CDM). Firefox's implementation of EME uses an open-source <a href="Sandbox_(computer_security)" title="Sandbox (computer security)">sandbox</a> to load the proprietary DRM modules, which are treated as <a href="Browser_plug-in" class="mw-redirect" title="Browser plug-in">plug-ins</a> that are loaded when EME-encrypted content is requested. The sandbox was also designed to frustrate the ability for services and the DRM to <a href="Device_fingerprint" title="Device fingerprint">uniquely track and identify</a> devices.<sup id="cite_ref-pcw-f38drm_16-1" class="reference"><a href="#cite_note-pcw-f38drm-16"><span class="cite-bracket">[</span>16<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-19" class="reference"><a href="#cite_note-19"><span class="cite-bracket">[</span>19<span class="cite-bracket">]</span></a></sup> Additionally, it is always possible to disable DRM in Firefox, which then not only disables EME, but also uninstalls the Widevine DRM libraries.<sup id="cite_ref-ghacks.net_20-0" class="reference"><a href="#cite_note-ghacks.net-20"><span class="cite-bracket">[</span>20<span class="cite-bracket">]</span></a></sup>
</p><p><a href="Netflix" title="Netflix">Netflix</a> supports HTML video using EME with a supported web browser: Chrome, Firefox,<sup id="cite_ref-netflix_21-0" class="reference"><a href="#cite_note-netflix-21"><span class="cite-bracket">[</span>21<span class="cite-bracket">]</span></a></sup> Microsoft Edge, <a href="Internet_Explorer" title="Internet Explorer">Internet Explorer</a> (on Windows 8.1 or newer<sup id="cite_ref-22" class="reference"><a href="#cite_note-22"><span class="cite-bracket">[</span>22<span class="cite-bracket">]</span></a></sup>), or <a href="Safari_(web_browser)" title="Safari (web browser)">Safari</a> (on OS X Yosemite or newer<sup id="cite_ref-23" class="reference"><a href="#cite_note-23"><span class="cite-bracket">[</span>23<span class="cite-bracket">]</span></a></sup>). <a href="YouTube" title="YouTube">YouTube</a> supports the MSE.<sup id="cite_ref-24" class="reference"><a href="#cite_note-24"><span class="cite-bracket">[</span>24<span class="cite-bracket">]</span></a></sup> Available players supporting MPEG-DASH using the MSE and EME are NexPlayer,<sup id="cite_ref-25" class="reference"><a href="#cite_note-25"><span class="cite-bracket">[</span>25<span class="cite-bracket">]</span></a></sup> THEOplayer<sup id="cite_ref-26" class="reference"><a href="#cite_note-26"><span class="cite-bracket">[</span>26<span class="cite-bracket">]</span></a></sup> by OpenTelly, the bitdash MPEG-DASH player,<sup id="cite_ref-27" class="reference"><a href="#cite_note-27"><span class="cite-bracket">[</span>27<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-28" class="reference"><a href="#cite_note-28"><span class="cite-bracket">[</span>28<span class="cite-bracket">]</span></a></sup> dash.js<sup id="cite_ref-29" class="reference"><a href="#cite_note-29"><span class="cite-bracket">[</span>29<span class="cite-bracket">]</span></a></sup> by <a href="DASH-IF" title="DASH-IF">DASH-IF</a> or rx-player.<sup id="cite_ref-30" class="reference"><a href="#cite_note-30"><span class="cite-bracket">[</span>30<span class="cite-bracket">]</span></a></sup>
</p><p>Note that in Firefox and Chrome, EME does not work unless the media is supplied via <a href="Media_Source_Extensions" title="Media Source Extensions">Media Source Extensions</a>.
</p><p>Version 4.3 and subsequent versions of <a href="Android_(operating_system)" title="Android (operating system)">Android</a> support EME.<sup id="cite_ref-31" class="reference"><a href="#cite_note-31"><span class="cite-bracket">[</span>31<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading3"><h3 id="Content_Decryption_Modules">Content Decryption Modules</h3></div>
<ul><li>Adobe Primetime CDM (used by old Firefox versions 47 to 51)<sup id="cite_ref-ghacks.net_20-1" class="reference"><a href="#cite_note-ghacks.net-20"><span class="cite-bracket">[</span>20<span class="cite-bracket">]</span></a></sup></li>
<li><a href="Widevine" title="Widevine">Widevine</a> (used in <a href="Google_Chrome" title="Google Chrome">Chrome</a> and <a href="Firefox" title="Firefox">Firefox</a> + their derivatives, including <a href="Opera_(web_browser)" title="Opera (web browser)">Opera</a> and newest versions of <a href="Microsoft_Edge" title="Microsoft Edge">Microsoft Edge</a>)<sup id="cite_ref-theo_32-0" class="reference"><a href="#cite_note-theo-32"><span class="cite-bracket">[</span>32<span class="cite-bracket">]</span></a></sup></li>
<li><a href="PlayReady" title="PlayReady">PlayReady</a> (used in <a href="EdgeHTML" title="EdgeHTML">EdgeHTML</a>-based <a href="Microsoft_Edge" title="Microsoft Edge">Microsoft Edge</a> on Windows 10 and <a href="Internet_Explorer_11" title="Internet Explorer 11">Internet Explorer 11</a> for Windows 8.1 and 10)<sup id="cite_ref-theo_32-1" class="reference"><a href="#cite_note-theo-32"><span class="cite-bracket">[</span>32<span class="cite-bracket">]</span></a></sup></li>
<li><a href="FairPlay" title="FairPlay">FairPlay</a> (used in <a href="Safari_(web_browser)" title="Safari (web browser)">Safari</a> since <a href="OS_X_Yosemite" title="OS X Yosemite">OS X Yosemite</a>)</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Criticism">Criticism</h2></div>
<p>EME has faced strong criticism from both inside<sup id="cite_ref-33" class="reference"><a href="#cite_note-33"><span class="cite-bracket">[</span>33<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-34" class="reference"><a href="#cite_note-34"><span class="cite-bracket">[</span>34<span class="cite-bracket">]</span></a></sup> and outside W3C.<sup id="cite_ref-35" class="reference"><a href="#cite_note-35"><span class="cite-bracket">[</span>35<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-36" class="reference"><a href="#cite_note-36"><span class="cite-bracket">[</span>36<span class="cite-bracket">]</span></a></sup> The major issues for criticism are implementation issues for <a href="Open-source_software" title="Open-source software">open-source</a> browsers, entry barriers for new browsers, lack of interoperability,<sup id="cite_ref-37" class="reference"><a href="#cite_note-37"><span class="cite-bracket">[</span>37<span class="cite-bracket">]</span></a></sup> concerns about security, privacy and accessibility, and possibility of legal trouble in the United States due to Chapter 12<sup id="cite_ref-38" class="reference"><a href="#cite_note-38"><span class="cite-bracket">[</span>38<span class="cite-bracket">]</span></a></sup> of the <a href="Digital_Millennium_Copyright_Act" title="Digital Millennium Copyright Act">DMCA</a>.<sup id="cite_ref-39" class="reference"><a href="#cite_note-39"><span class="cite-bracket">[</span>39<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-40" class="reference"><a href="#cite_note-40"><span class="cite-bracket">[</span>40<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-41" class="reference"><a href="#cite_note-41"><span class="cite-bracket">[</span>41<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-42" class="reference"><a href="#cite_note-42"><span class="cite-bracket">[</span>42<span class="cite-bracket">]</span></a></sup>
</p><p>In July 2020, <a href="Reddit" title="Reddit">Reddit</a> started using a <a href="Fingerprint_(computing)" title="Fingerprint (computing)">fingerprinting</a> mechanism that involves loading every DRM module that browsers can support, and logs what ends up loading as part of the data collected. Users noticed this when Firefox began alerting them that Reddit "required" them to load DRM software to play media, although none of the media on the page actually needed it.<sup id="cite_ref-43" class="reference"><a href="#cite_note-43"><span class="cite-bracket">[</span>43<span class="cite-bracket">]</span></a></sup>
</p><p>As of 2020, the ways in which EME interferes with open source have become concrete. None of the widely used CDMs are being licensed to independent open-source browser providers without paying a per-browser licensing fee (particularly to <a href="Google" title="Google">Google</a> – for their <a href="Widevine" title="Widevine">Widevine</a> CDM, which is used in nearly all recently developed web browsers).<sup id="cite_ref-:0_7-1" class="reference"><a href="#cite_note-:0-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2></div>
<ul><li><a href="Media_Source_Extensions" title="Media Source Extensions">Media Source Extensions</a></li>
<li><a href="HTML5#Digital_rights_management" title="HTML5">HTML5 §&nbsp;Digital rights management</a></li>
<li><a href="World_Wide_Web_Consortium" title="World Wide Web Consortium">World Wide Web Consortium</a></li>
<li><a href="Digital_rights_management" title="Digital rights management">Digital rights management</a></li>
<li><a href="Defective_by_Design" title="Defective by Design">Defective by Design</a></li>
<li><a href="Electronic_Frontier_Foundation" title="Electronic Frontier Foundation">Electronic Frontier Foundation</a></li>
<li><a href="Digital_Millennium_Copyright_Act" title="Digital Millennium Copyright Act">Digital Millennium Copyright Act</a></li>
<li><a href="Project_DReaM" title="Project DReaM">Project DReaM</a></li>
<li><a href="Protected_Media_Path" title="Protected Media Path">Protected Media Path</a></li></ul>
<div class="mw-heading mw-heading2"><h2 id="References">References</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1239543626">
/* start https://en.wikipedia.org/ */


.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}


/* end https://en.wikipedia.org/ */
</style><div class="reflist reflist-columns references-column-width" style="column-width: 30em;">
<ol class="references">
<li id="cite_note-eme-history-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-eme-history_1-0">^</a></b></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">
/* start https://en.wikipedia.org/ */


.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("./mw/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("./mw/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("./mw/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("./mw/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}


/* end https://en.wikipedia.org/ */
</style><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.w3.org/standards/history/encrypted-media">"Encrypted Media Extensions Publication History – W3C"</a>. <i>W3C</i>. n.d<span class="reference-accessdate">. Retrieved <span class="nowrap">2021-04-20</span></span>.</cite></span>
</li>
<li id="cite_note-EME-2017-2"><span class="mw-cite-backlink">^ <a href="#cite_ref-EME-2017_2-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-EME-2017_2-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-EME-2017_2-2"><sup><i><b>c</b></i></sup></a> <a href="#cite_ref-EME-2017_2-3"><sup><i><b>d</b></i></sup></a> <a href="#cite_ref-EME-2017_2-4"><sup><i><b>e</b></i></sup></a> <a href="#cite_ref-EME-2017_2-5"><sup><i><b>f</b></i></sup></a></span> <span class="reference-text"><cite id="CITEREFHTML_Media_Extensions_Working_Group2017" class="citation web cs1"><a href="HTML_Working_Group" title="HTML Working Group">HTML Media Extensions Working Group</a> (18 September 2017). Dorwin, David; Smith, Jerry; Watson, Mark; Bateman, Adrian (eds.). <a rel="nofollow" class="external text" href="https://www.w3.org/TR/2017/REC-encrypted-media-20170918/">"Encrypted Media Extensions W3C Recommendation"</a>. W3C<span class="reference-accessdate">. Retrieved <span class="nowrap">2021-04-20</span></span>.</cite></span>
</li>
<li id="cite_note-eme-draft-3"><span class="mw-cite-backlink">^ <a href="#cite_ref-eme-draft_3-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-eme-draft_3-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-eme-draft_3-2"><sup><i><b>c</b></i></sup></a> <a href="#cite_ref-eme-draft_3-3"><sup><i><b>d</b></i></sup></a> <a href="#cite_ref-eme-draft_3-4"><sup><i><b>e</b></i></sup></a> <a href="#cite_ref-eme-draft_3-5"><sup><i><b>f</b></i></sup></a></span> <span class="reference-text"><cite id="CITEREFMedia_Working_Group2021" class="citation web cs1">Media Working Group; et&nbsp;al. (Media Working Group) (2021-03-20). Parrish, Joey; Freedman, Greg; Dorwin, David; Smith, Jerry; Watson, Mark; Bateman, Adrian (eds.). <a rel="nofollow" class="external text" href="https://w3c.github.io/encrypted-media/">"Encrypted Media Extensions"</a>. <i>w3c.github.io</i>. Editor's Draft<span class="reference-accessdate">. Retrieved <span class="nowrap">2021-04-20</span></span>.</cite></span>
</li>
<li id="cite_note-4"><span class="mw-cite-backlink"><b><a href="#cite_ref-4">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://w3c.github.io/media-source/">"Media Source Extensions™"</a>. <i>w3c.github.io</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2020-08-18</span></span>.</cite></span>
</li>
<li id="cite_note-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-5">^</a></b></span> <span class="reference-text"><cite id="CITEREFDavid_Dorwin" class="citation web cs1">David Dorwin. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20150219183530/http://www.w3.org/TR/encrypted-media/cenc-format.html">"ISO Common Encryption EME Stream Format and Initialization Data"</a>. W3C. Archived from <a rel="nofollow" class="external text" href="https://www.w3.org/TR/encrypted-media/cenc-format.html">the original</a> on 2015-02-19.</cite></span>
</li>
<li id="cite_note-6"><span class="mw-cite-backlink"><b><a href="#cite_ref-6">^</a></b></span> <span class="reference-text"><cite id="CITEREFLederer2015" class="citation web cs1">Lederer, Stefan (February 2, 2015). <a rel="nofollow" class="external text" href="https://bitmovin.com/status-mpeg-dash-today-youtube-netflix-use-html5-beyond">"Why YouTube &amp; Netflix use MPEG-DASH in HTML5"</a>. Bitmovin.</cite></span>
</li>
<li id="cite_note-:0-7"><span class="mw-cite-backlink">^ <a href="#cite_ref-:0_7-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-:0_7-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://boingboing.net/2020/01/08/rip-open-web-platform.html">"Three years after the W3C approved a DRM standard, it's no longer possible to make a functional indie browser"</a>. <i>Boing Boing</i>. 2020-01-08<span class="reference-accessdate">. Retrieved <span class="nowrap">2020-08-18</span></span>.</cite></span>
</li>
<li id="cite_note-8"><span class="mw-cite-backlink"><b><a href="#cite_ref-8">^</a></b></span> <span class="reference-text"><cite id="CITEREFLucian_Constantin2012" class="citation web cs1">Lucian Constantin (24 February 2012). <a rel="nofollow" class="external text" href="http://www.itworld.com/article/2729888/enterprise-software/proposed-encrypted-media-support-in-html5-sparks-drm-debate-on-w3c-mailing-list.html">"Proposed Encrypted Media Support in HTML5 Sparks DRM Debate on W3C Mailing List"</a>. <i>IT World</i>. IDG News Service<span class="reference-accessdate">. Retrieved <span class="nowrap">12 October</span> 2015</span>.</cite></span>
</li>
<li id="cite_note-9"><span class="mw-cite-backlink"><b><a href="#cite_ref-9">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://lists.w3.org/Archives/Public/public-html-media/2017Jul/0000.html">"W3C Announcement"</a><span class="reference-accessdate">. Retrieved <span class="nowrap">12 July</span> 2017</span>.</cite></span>
</li>
<li id="cite_note-10"><span class="mw-cite-backlink"><b><a href="#cite_ref-10">^</a></b></span> <span class="reference-text"><cite id="CITEREFHarcourt2020" class="citation book cs1">Harcourt, Alison (31 January 2020). <i>Global Standard Setting in Internet Governance</i>. Christou, George, 1973–, Simpson, Seamus. (First&nbsp;ed.). Oxford. p.&nbsp;96. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>978-0-19-257859-4</bdi>. <a href="OCLC_(identifier)" class="mw-redirect" title="OCLC (identifier)">OCLC</a>&nbsp;<a rel="nofollow" class="external text" href="https://search.worldcat.org/oclc/1140150076">1140150076</a>.</cite><span class="cs1-maint citation-comment"><code class="cs1-code">{{cite book}}</code>: CS1 maint: location missing publisher (link)</span></span>
</li>
<li id="cite_note-11"><span class="mw-cite-backlink"><b><a href="#cite_ref-11">^</a></b></span> <span class="reference-text"><cite id="CITEREFDoctorow2017" class="citation web cs1">Doctorow, Cory (18 September 2017). <a rel="nofollow" class="external text" href="https://www.eff.org/deeplinks/2017/09/open-letter-w3c-director-ceo-team-and-membership">"An open letter to the W3C Director, CEO, team and membership"</a>. <i>Electronic Frontier Foundation</i><span class="reference-accessdate">. Retrieved <span class="nowrap">18 September</span> 2017</span>.</cite></span>
</li>
<li id="cite_note-12"><span class="mw-cite-backlink"><b><a href="#cite_ref-12">^</a></b></span> <span class="reference-text"><cite id="CITEREFAnthony_Park_and_Mark_Watson2013" class="citation web cs1">Anthony Park and Mark Watson (April 15, 2013). <a rel="nofollow" class="external text" href="http://techblog.netflix.com/2013/04/html5-video-at-netflix.html">"HTML5 Video at Netflix"</a>. Netflix.</cite></span>
</li>
<li id="cite_note-13"><span class="mw-cite-backlink"><b><a href="#cite_ref-13">^</a></b></span> <span class="reference-text"><cite id="CITEREFWeinstein2013" class="citation web cs1">Weinstein, Rafael (26 February 2013). <a rel="nofollow" class="external text" href="https://blog.chromium.org/2013/02/chrome-26-beta-template-element.html">"Chrome 26 Beta: Template Element &amp; Unprefixed CSS Transitions"</a>. <i>Chromium Blog</i><span class="reference-accessdate">. Retrieved <span class="nowrap">31 August</span> 2014</span>.</cite></span>
</li>
<li id="cite_note-14"><span class="mw-cite-backlink"><b><a href="#cite_ref-14">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://msdn.microsoft.com/en-us/library/windows/apps/dn466732.aspx">"Supporting Encrypted Media Extensions with Microsoft PlayReady DRM in web browsers"</a>. <i>Windows app development</i><span class="reference-accessdate">. Retrieved <span class="nowrap">31 August</span> 2014</span>.</cite></span>
</li>
<li id="cite_note-15"><span class="mw-cite-backlink"><b><a href="#cite_ref-15">^</a></b></span> <span class="reference-text"><cite id="CITEREFProtalinski2014" class="citation web cs1">Protalinski, Emil (3 June 2014). <a rel="nofollow" class="external text" href="https://thenextweb.com/insider/2014/06/03/netflix-ditches-silverlight-html5-macs-available-today-safari-os-x-yosemite-beta/">"Netflix ditches Silverlight for HTML5 on Macs too: Available today in Safari on OS X Yosemite beta"</a>. <i>The Next Web</i><span class="reference-accessdate">. Retrieved <span class="nowrap">16 October</span> 2014</span>.</cite></span>
</li>
<li id="cite_note-pcw-f38drm-16"><span class="mw-cite-backlink">^ <a href="#cite_ref-pcw-f38drm_16-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-pcw-f38drm_16-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://www.pcworld.com/article/2922116/firefox-38-arrives-with-contentious-closed-source-drm-integrated-by-default.html">"Firefox 38 arrives with contentious closed-source DRM integrated by default"</a>. <i><a href="PC_World" title="PC World">PC World</a></i>. IDG. 13 May 2015<span class="reference-accessdate">. Retrieved <span class="nowrap">12 August</span> 2015</span>.</cite></span>
</li>
<li id="cite_note-17"><span class="mw-cite-backlink"><b><a href="#cite_ref-17">^</a></b></span> <span class="reference-text"><cite id="CITEREFMohrlandSmith2015" class="citation web cs1">Mohrland, Jesse; Smith, Jerry (October 27, 2015). <a rel="nofollow" class="external text" href="https://blogs.windows.com/msedgedev/2015/10/27/using-encrypted-media-extensions-for-interoperable-protected-media/">"Using Encrypted Media Extensions for interoperable protected media"</a>. Microsoft.</cite></span>
</li>
<li id="cite_note-mozilla-18"><span class="mw-cite-backlink"><b><a href="#cite_ref-mozilla_18-0">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20140817054329/http://www.theinquirer.net/inquirer/news/2344972/mozilla-grudgingly-brings-netflix-to-linux-with-drm">Mozilla begrudgingly brings Netflix support to Linux with DRM in Firefox</a></span>
</li>
<li id="cite_note-19"><span class="mw-cite-backlink"><b><a href="#cite_ref-19">^</a></b></span> <span class="reference-text"><cite id="CITEREFJeremy_Kirk2014" class="citation web cs1">Jeremy Kirk (May 15, 2014). <a rel="nofollow" class="external text" href="http://www.pcworld.com/article/2155440/firefox-will-get-drm-copy-protection-despite-mozillas-concerns.html">"Mozilla hates it, but streaming video DRM is coming to Firefox"</a>. <i>PCWorld</i>.</cite></span>
</li>
<li id="cite_note-ghacks.net-20"><span class="mw-cite-backlink">^ <a href="#cite_ref-ghacks.net_20-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-ghacks.net_20-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.ghacks.net/2017/01/10/firefox-52-adobe-primetime-cdm-removal/">"Firefox 52: Adobe Primetime CDM removal – gHacks Tech News"</a>. <i>www.ghacks.net</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2019-05-31</span></span>.</cite></span>
</li>
<li id="cite_note-netflix-21"><span class="mw-cite-backlink"><b><a href="#cite_ref-netflix_21-0">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://help.netflix.com/en/node/23742">Netflix system requirements for HTML5 Player and Silverlight</a></span>
</li>
<li id="cite_note-22"><span class="mw-cite-backlink"><b><a href="#cite_ref-22">^</a></b></span> <span class="reference-text"><cite id="CITEREFAnthony_Park_and_Mark_Watson2013" class="citation web cs1">Anthony Park and Mark Watson (26 June 2013). <a rel="nofollow" class="external text" href="http://techblog.netflix.com/2013/06/html5-video-in-ie-11-on-windows-81.html">"HTML5 Video in IE 11 on Windows 8.1"</a>. Netflix.</cite></span>
</li>
<li id="cite_note-23"><span class="mw-cite-backlink"><b><a href="#cite_ref-23">^</a></b></span> <span class="reference-text"><cite id="CITEREFAnthony_Park_and_Mark_Watson2014" class="citation web cs1">Anthony Park and Mark Watson (3 June 2014). <a rel="nofollow" class="external text" href="http://techblog.netflix.com/2014/06/html5-video-in-safari-on-os-x-yosemite.html">"HTML5 Video in Safari on OS X Yosemite"</a>. Netflix.</cite></span>
</li>
<li id="cite_note-24"><span class="mw-cite-backlink"><b><a href="#cite_ref-24">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20160403210440/http://www.dash-player.com/blog/2015/02/the-status-of-mpeg-dash-today-and-why-youtube-and-netflix-use-it-in-html5/">"The Status of MPEG-DASH today, and why Youtube &amp; Netflix use it in HTML5"</a>. bitmovin GmbH. 2 Feb 2015. Archived from <a rel="nofollow" class="external text" href="http://www.dash-player.com/blog/2015/02/the-status-of-mpeg-dash-today-and-why-youtube-and-netflix-use-it-in-html5/">the original</a> on 3 April 2016<span class="reference-accessdate">. Retrieved <span class="nowrap">9 February</span> 2015</span>.</cite></span>
</li>
<li id="cite_note-25"><span class="mw-cite-backlink"><b><a href="#cite_ref-25">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://www.nexplayersdk.com/">NexPlayer: Passion for High Quality Video Services</a></span>
</li>
<li id="cite_note-26"><span class="mw-cite-backlink"><b><a href="#cite_ref-26">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://www.theoplayer.com">THEOplayer by OpenTelly: HLS and MPEG-DASH player for HTML5 MSE and EME</a></span>
</li>
<li id="cite_note-27"><span class="mw-cite-backlink"><b><a href="#cite_ref-27">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20160710145025/http://www.dash-player.com/">"bitdash MPEG-DASH player for HTML5 MSE and EME"</a>. Archived from <a rel="nofollow" class="external text" href="http://www.dash-player.com/">the original</a> on 2016-07-10<span class="reference-accessdate">. Retrieved <span class="nowrap">2015-02-09</span></span>.</cite></span>
</li>
<li id="cite_note-28"><span class="mw-cite-backlink"><b><a href="#cite_ref-28">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://www.dash-player.com/drm_demopage">bitdash HTML5 EME DRM demo area</a></span>
</li>
<li id="cite_note-29"><span class="mw-cite-backlink"><b><a href="#cite_ref-29">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://github.com/Dash-Industry-Forum/dash.js/wiki">dash.js</a></span>
</li>
<li id="cite_note-30"><span class="mw-cite-backlink"><b><a href="#cite_ref-30">^</a></b></span> <span class="reference-text">
<a rel="nofollow" class="external text" href="https://github.com/canalplus/rx-player">rx-player</a></span>
</li>
<li id="cite_note-31"><span class="mw-cite-backlink"><b><a href="#cite_ref-31">^</a></b></span> <span class="reference-text">
<cite id="CITEREFOzer2015" class="citation news cs1">Ozer, Jan (July–August 2015). <a rel="nofollow" class="external text" href="http://www.streamingmedia.com/Articles/Editorial/Featured-Articles/HTML5-Comes-of-Age-Its-Finally-Time-to-Tell-Flash-Good-bye-105246.aspx">"HTML5 Comes of Age: It's Finally Time to Tell Flash Good-bye"</a>. <i>Streaming Media Magazine</i>. StreamingMedia.com<span class="reference-accessdate">. Retrieved <span class="nowrap">2016-01-12</span></span>. <q>In mobile markets [...] Android has supported MSE since version 4.1, and EME since version 4.3.</q></cite></span>
</li>
<li id="cite_note-theo-32"><span class="mw-cite-backlink">^ <a href="#cite_ref-theo_32-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-theo_32-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.theoplayer.com/features/cross-browser">"THEOplayer Supports All Platforms"</a>. theoplayer.com. 2017. <q>Note that IE10 and IE11 on Windows 7 do not have the MSE/EME API available which is required to playback DRM protected video content in HTML5. As a consequence, it is technically not possible for any HTML5-based video player to playback DRM protected content on these browsers in Windows 7.</q></cite></span>
</li>
<li id="cite_note-33"><span class="mw-cite-backlink"><b><a href="#cite_ref-33">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://lists.w3.org/Archives/Public/public-html/2012Feb/0352.html">"Boris Zabrasky opposing EME"</a><span class="reference-accessdate">. Retrieved <span class="nowrap">10 June</span> 2016</span>.</cite></span>
</li>
<li id="cite_note-34"><span class="mw-cite-backlink"><b><a href="#cite_ref-34">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://lists.w3.org/Archives/Public/public-html/2012Feb/0274.html">"Ian Hickson opposing EME"</a><span class="reference-accessdate">. Retrieved <span class="nowrap">10 June</span> 2016</span>.</cite></span>
</li>
<li id="cite_note-35"><span class="mw-cite-backlink"><b><a href="#cite_ref-35">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.vice.com/en/article/we-marched-with-richard-stallman-at-a-drm-protest-last-night-w3-consortium-MIT-joi-ito/">"Richard Stallman Braved a Winter Storm Last Night to March Against DRM"</a>. 21 March 2016<span class="reference-accessdate">. Retrieved <span class="nowrap">10 June</span> 2016</span>.</cite></span>
</li>
<li id="cite_note-36"><span class="mw-cite-backlink"><b><a href="#cite_ref-36">^</a></b></span> <span class="reference-text"><cite id="CITEREFStallman2016" class="citation web cs1"><a href="Richard_Stallman" title="Richard Stallman">Stallman, Richard</a> (Nov 18, 2016). <a rel="nofollow" class="external text" href="https://www.gnu.org/philosophy/can-you-trust.html">"Can you trust your computer?"</a>. <i><a href="Free_Software%2C_Free_Society" title="Free Software, Free Society">Free Software, Free Society</a></i>. <a href="GNU" title="GNU">GNU</a><span class="reference-accessdate">. Retrieved <span class="nowrap">2018-02-08</span></span>.</cite></span>
</li>
<li id="cite_note-37"><span class="mw-cite-backlink"><b><a href="#cite_ref-37">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.theverge.com/2016/11/21/13703152/netflix-4k-pc-windows-support">"4K Netflix arrives on Windows 10, but probably not for your PC"</a>. 21 November 2016<span class="reference-accessdate">. Retrieved <span class="nowrap">26 November</span> 2016</span>.</cite></span>
</li>
<li id="cite_note-38"><span class="mw-cite-backlink"><b><a href="#cite_ref-38">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.copyright.gov/title17/92chap12.html">"Title 17, Circular 92, Chapter 12 - Copyright.gov"</a><span class="reference-accessdate">. Retrieved <span class="nowrap">25 July</span> 2016</span>.</cite></span>
</li>
<li id="cite_note-39"><span class="mw-cite-backlink"><b><a href="#cite_ref-39">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.eff.org/pages/drm/w3c-formal-objection-html-wg">"EFF's Formal Objection to EME"</a>. 29 May 2013<span class="reference-accessdate">. Retrieved <span class="nowrap">10 June</span> 2016</span>.</cite></span>
</li>
<li id="cite_note-40"><span class="mw-cite-backlink"><b><a href="#cite_ref-40">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.eff.org/deeplinks/2016/04/save-firefox">"Save Firefox"</a>. 11 May 2016<span class="reference-accessdate">. Retrieved <span class="nowrap">10 June</span> 2016</span>.</cite></span>
</li>
<li id="cite_note-41"><span class="mw-cite-backlink"><b><a href="#cite_ref-41">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.eff.org/deeplinks/2016/05/open-letter-members-w3c-advisory-committee">"Open Letter to W3C"</a>. 12 May 2016<span class="reference-accessdate">. Retrieved <span class="nowrap">10 June</span> 2016</span>.</cite></span>
</li>
<li id="cite_note-42"><span class="mw-cite-backlink"><b><a href="#cite_ref-42">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.eff.org/deeplinks/2016/03/interoperability-and-w3c-defending-future-present">"Interoperability and the W3C: Defending the Future from the Present"</a>. 30 March 2016<span class="reference-accessdate">. Retrieved <span class="nowrap">10 June</span> 2016</span>.</cite></span>
</li>
<li id="cite_note-43"><span class="mw-cite-backlink"><b><a href="#cite_ref-43">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://smitop.com/post/reddit-whiteops/">"Reddit's website uses DRM for fingerprinting"</a>. <i>smitop.com</i>. 8 July 2020<span class="reference-accessdate">. Retrieved <span class="nowrap">2020-07-12</span></span>.</cite></span>
</li>
</ol></div>
<div class="navbox-styles"><style data-mw-deduplicate="TemplateStyles:r1129693374">
/* start https://en.wikipedia.org/ */


.mw-parser-output .hlist dl,.mw-parser-output .hlist ol,.mw-parser-output .hlist ul{margin:0;padding:0}.mw-parser-output .hlist dd,.mw-parser-output .hlist dt,.mw-parser-output .hlist li{margin:0;display:inline}.mw-parser-output .hlist.inline,.mw-parser-output .hlist.inline dl,.mw-parser-output .hlist.inline ol,.mw-parser-output .hlist.inline ul,.mw-parser-output .hlist dl dl,.mw-parser-output .hlist dl ol,.mw-parser-output .hlist dl ul,.mw-parser-output .hlist ol dl,.mw-parser-output .hlist ol ol,.mw-parser-output .hlist ol ul,.mw-parser-output .hlist ul dl,.mw-parser-output .hlist ul ol,.mw-parser-output .hlist ul ul{display:inline}.mw-parser-output .hlist .mw-empty-li{display:none}.mw-parser-output .hlist dt::after{content:": "}.mw-parser-output .hlist dd::after,.mw-parser-output .hlist li::after{content:" · ";font-weight:bold}.mw-parser-output .hlist dd:last-child::after,.mw-parser-output .hlist dt:last-child::after,.mw-parser-output .hlist li:last-child::after{content:none}.mw-parser-output .hlist dd dd:first-child::before,.mw-parser-output .hlist dd dt:first-child::before,.mw-parser-output .hlist dd li:first-child::before,.mw-parser-output .hlist dt dd:first-child::before,.mw-parser-output .hlist dt dt:first-child::before,.mw-parser-output .hlist dt li:first-child::before,.mw-parser-output .hlist li dd:first-child::before,.mw-parser-output .hlist li dt:first-child::before,.mw-parser-output .hlist li li:first-child::before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child::after,.mw-parser-output .hlist dd dt:last-child::after,.mw-parser-output .hlist dd li:last-child::after,.mw-parser-output .hlist dt dd:last-child::after,.mw-parser-output .hlist dt dt:last-child::after,.mw-parser-output .hlist dt li:last-child::after,.mw-parser-output .hlist li dd:last-child::after,.mw-parser-output .hlist li dt:last-child::after,.mw-parser-output .hlist li li:last-child::after{content:")";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li::before{content:" "counter(listitem)"\a0 "}.mw-parser-output .hlist dd ol>li:first-child::before,.mw-parser-output .hlist dt ol>li:first-child::before,.mw-parser-output .hlist li ol>li:first-child::before{content:" ("counter(listitem)"\a0 "}


/* end https://en.wikipedia.org/ */
</style><style data-mw-deduplicate="TemplateStyles:r1236075235">
/* start https://en.wikipedia.org/ */


.mw-parser-output .navbox{box-sizing:border-box;border:1px solid #a2a9b1;width:100%;clear:both;font-size:88%;text-align:center;padding:1px;margin:1em auto 0}.mw-parser-output .navbox .navbox{margin-top:0}.mw-parser-output .navbox+.navbox,.mw-parser-output .navbox+.navbox-styles+.navbox{margin-top:-1px}.mw-parser-output .navbox-inner,.mw-parser-output .navbox-subgroup{width:100%}.mw-parser-output .navbox-group,.mw-parser-output .navbox-title,.mw-parser-output .navbox-abovebelow{padding:0.25em 1em;line-height:1.5em;text-align:center}.mw-parser-output .navbox-group{white-space:nowrap;text-align:right}.mw-parser-output .navbox,.mw-parser-output .navbox-subgroup{background-color:#fdfdfd}.mw-parser-output .navbox-list{line-height:1.5em;border-color:#fdfdfd}.mw-parser-output .navbox-list-with-group{text-align:left;border-left-width:2px;border-left-style:solid}.mw-parser-output tr+tr>.navbox-abovebelow,.mw-parser-output tr+tr>.navbox-group,.mw-parser-output tr+tr>.navbox-image,.mw-parser-output tr+tr>.navbox-list{border-top:2px solid #fdfdfd}.mw-parser-output .navbox-title{background-color:#ccf}.mw-parser-output .navbox-abovebelow,.mw-parser-output .navbox-group,.mw-parser-output .navbox-subgroup .navbox-title{background-color:#ddf}.mw-parser-output .navbox-subgroup .navbox-group,.mw-parser-output .navbox-subgroup .navbox-abovebelow{background-color:#e6e6ff}.mw-parser-output .navbox-even{background-color:#f7f7f7}.mw-parser-output .navbox-odd{background-color:transparent}.mw-parser-output .navbox .hlist td dl,.mw-parser-output .navbox .hlist td ol,.mw-parser-output .navbox .hlist td ul,.mw-parser-output .navbox td.hlist dl,.mw-parser-output .navbox td.hlist ol,.mw-parser-output .navbox td.hlist ul{padding:0.125em 0}.mw-parser-output .navbox .navbar{display:block;font-size:100%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}body.skin--responsive .mw-parser-output .navbox-image img{max-width:none!important}@media print{body.ns-0 .mw-parser-output .navbox{display:none!important}}


/* end https://en.wikipedia.org/ */
</style></div><div role="navigation" class="navbox" aria-labelledby="Web_interfaces26" style="padding:3px"><table class="nowraplinks mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><style data-mw-deduplicate="TemplateStyles:r1239400231">
/* start https://en.wikipedia.org/ */


.mw-parser-output .navbar{display:inline;font-size:88%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar a>span,.mw-parser-output .navbar a>abbr{text-decoration:inherit}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}html.skin-theme-clientpref-night .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}@media(prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}}@media print{.mw-parser-output .navbar{display:none!important}}


/* end https://en.wikipedia.org/ */
</style><div id="Web_interfaces26" style="font-size:114%;margin:0 4em"><a href="Web_API" title="Web API">Web interfaces</a></div></th></tr><tr><td colspan="2" class="navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><td class="navbox-abovebelow" colspan="2" style="font-weight:bold"><div id="Server-side154"><a href="Server-side" class="mw-redirect" title="Server-side">Server-side</a></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Communication_protocol" title="Communication protocol">Protocols</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="HTTP" title="HTTP">HTTP</a>
<ul><li><a href="HTTP/2" title="HTTP/2">v2</a></li>
<li><a href="HTTP/3" title="HTTP/3">v3</a></li>
<li><a href="HTTPS" title="HTTPS">Encryption</a></li>
<li><a href="WebDAV" title="WebDAV">WebDAV</a></li></ul></li>
<li><a href="Common_Gateway_Interface" title="Common Gateway Interface">CGI</a></li>
<li><a href="Simple_Common_Gateway_Interface" title="Simple Common Gateway Interface">SCGI</a></li>
<li><a href="FastCGI" title="FastCGI">FCGI</a></li>
<li><a href="Apache_JServ_Protocol" title="Apache JServ Protocol">AJP</a></li>
<li><a href="Web_Services_for_Remote_Portlets" title="Web Services for Remote Portlets">WSRP</a></li>
<li><a href="WebSocket" title="WebSocket">WebSocket</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Server_application_programming_interface" title="Server application programming interface">Server APIs</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Netscape_Server_Application_Programming_Interface" title="Netscape Server Application Programming Interface">C NSAPI</a></li>
<li><a href="Apache_HTTP_Server#Feature_overview" title="Apache HTTP Server">C ASAPI</a></li>
<li><a href="Internet_Server_Application_Programming_Interface" title="Internet Server Application Programming Interface">C ISAPI</a></li>
<li><a href="Active_Server_Pages" title="Active Server Pages">COM ASP</a></li>
<li><a href="Jakarta_Servlet" title="Jakarta Servlet">Jakarta Servlet</a>
<ul><li><a href="Web_container" title="Web container">container</a></li></ul></li>
<li><a href="Open_Web_Interface_for_.NET" title="Open Web Interface for .NET">CLI OWIN</a></li>
<li><a href="HTTP_handler" title="HTTP handler">ASP.NET Handler</a></li>
<li><a href="Web_Server_Gateway_Interface" title="Web Server Gateway Interface">Python WSGI</a></li>
<li><a href="Asynchronous_Server_Gateway_Interface" title="Asynchronous Server Gateway Interface">Python ASGI</a></li>
<li><a href="Rack_(web_server_interface)" title="Rack (web server interface)">Ruby Rack</a></li>
<li><a href="JSGI" title="JSGI">JavaScript JSGI</a></li>
<li><a href="Plack_(software)#PSGI" title="Plack (software)">Perl PSGI</a></li>
<li><a href="Java_Portlet_Specification" title="Java Portlet Specification">Portlet</a>
<ul><li><a href="Java_Portlet_Specification" title="Java Portlet Specification">container</a></li></ul></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="List_of_Apache_modules" title="List of Apache modules">Apache modules</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Server_Side_Includes" title="Server Side Includes">mod_include</a></li>
<li><a href="Mod_jk" class="mw-redirect" title="Mod jk">mod_jk</a></li>
<li><a href="Mod_lisp" title="Mod lisp">mod_lisp</a></li>
<li><a href="Mod_mono" title="Mod mono">mod_mono</a></li>
<li><a href="Mod_parrot" class="mw-redirect" title="Mod parrot">mod_parrot</a></li>
<li><a href="Mod_perl" title="Mod perl">mod_perl</a></li>
<li><a href="PHP" title="PHP">mod_php</a></li>
<li><a href="Mod_proxy" title="Mod proxy">mod_proxy</a></li>
<li><a href="Mod_python" title="Mod python">mod_python</a></li>
<li><a href="Mod_wsgi" title="Mod wsgi">mod_wsgi</a></li>
<li><a href="Mod_ruby" title="Mod ruby">mod_ruby</a></li>
<li><a href="Phusion_Passenger" title="Phusion Passenger">Phusion Passenger</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Topics</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Web_service" title="Web service">Web service</a> vs. <a href="Web_resource" title="Web resource">Web resource</a></li>
<li><a href="Web-oriented_architecture" title="Web-oriented architecture">WOA</a> vs. <a href="Resource-oriented_architecture" title="Resource-oriented architecture">ROA</a></li>
<li><a href="Open_API" title="Open API">Open API</a></li>
<li><a href="Webhook" title="Webhook">Webhook</a></li>
<li><a href="Application_server" title="Application server">Application server</a>
<ul><li><a href="List_of_application_servers" title="List of application servers">comparison</a></li></ul></li>
<li><a href="Server-side_scripting" title="Server-side scripting">Scripting</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><td colspan="2" class="navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><td class="navbox-abovebelow" colspan="2" style="font-weight:bold"><div id="Client-side89"><a href="Client-side" class="mw-redirect" title="Client-side">Client-side</a></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Plug-in_(computing)" title="Plug-in (computing)">Browser APIs</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="NPAPI" title="NPAPI">C NPAPI</a>
<ul><li><a href="NPAPI#LiveConnect" title="NPAPI">LiveConnect</a></li>
<li><a href="NPAPI#XPConnect" title="NPAPI">XPConnect</a></li></ul></li>
<li><a href="NPAPI#NPRuntime" title="NPAPI">C NPRuntime</a></li>
<li><a href="Google_Native_Client#Pepper" title="Google Native Client">C PPAPI</a>
<ul><li><a href="Google_Native_Client" title="Google Native Client">NaCl</a></li></ul></li>
<li><a href="ActiveX" title="ActiveX">ActiveX</a></li>
<li><a href="Browser_Helper_Object" title="Browser Helper Object">BHO</a></li>
<li><a href="XAML_Browser_Applications" title="XAML Browser Applications">XBAP</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Web_API#Client_side" title="Web API">Web APIs</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="WHATWG" title="WHATWG">WHATWG</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="HTML_audio" title="HTML audio">Audio</a></li>
<li><a href="Canvas_element" title="Canvas element">Canvas</a></li>
<li><a href="Document_Object_Model" title="Document Object Model">DOM</a></li>
<li><a href="Server-sent_events" title="Server-sent events">SSE</a></li>
<li><a href="HTML_video" title="HTML video">Video</a></li>
<li><a href="WebSocket" title="WebSocket">WebSockets</a></li>
<li><a href="Web_Messaging" title="Web Messaging">Web messaging</a></li>
<li><a href="Web_storage" title="Web storage">Web storage</a></li>
<li><a href="Web_worker" title="Web worker">Web worker</a></li>
<li><a href="XMLHttpRequest" title="XMLHttpRequest">XMLHttpRequest</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="World_Wide_Web_Consortium" title="World Wide Web Consortium">W3C</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="DOM_event" title="DOM event">DOM events</a></li>

<li><a href="HTML5_File_API" title="HTML5 File API">File</a></li>
<li><a href="W3C_Geolocation_API" title="W3C Geolocation API">Geolocation</a></li>
<li><a href="Indexed_Database_API" title="Indexed Database API">IndexedDB</a></li>
<li><a href="Media_Source_Extensions" title="Media Source Extensions">MSE</a></li>
<li><a href="SVG" title="SVG">SVG</a></li>
<li><a href="WebAssembly" title="WebAssembly">WebAssembly</a></li>
<li><a href="WebAuthn" title="WebAuthn">WebAuthn</a></li>
<li><a href="WebGPU" title="WebGPU">WebGPU</a></li>
<li><a href="WebRTC" title="WebRTC">WebRTC</a></li>
<li><a href="WebXR" title="WebXR">WebXR</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Khronos_Group" title="Khronos Group">Khronos</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="WebCL" title="WebCL">WebCL</a></li>
<li><a href="WebGL" title="WebGL">WebGL</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Others</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Gears_(software)" title="Gears (software)">Gears</a></li>
<li><a href="Web_SQL_Database" title="Web SQL Database">Web SQL Database</a> (formerly W3C)</li>
<li><a href="WebUSB" title="WebUSB">WebUSB</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Topics</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Ajax_(programming)" title="Ajax (programming)">Ajax</a> and <a href="Remote_scripting" title="Remote scripting">Remote scripting</a> vs. <a href="Dynamic_HTML" title="Dynamic HTML">DHTML</a></li>
<li><a href="Browser_extension" title="Browser extension">Browser extension</a></li>
<li><a href="Cross-site_scripting" title="Cross-site scripting">Cross-site scripting</a> and <a href="Cross-origin_resource_sharing" title="Cross-origin resource sharing">CORS</a></li>
<li><a href="Hydration_(web_development)" title="Hydration (web development)">Hydration</a></li>
<li><a href="Mashup_(web_application_hybrid)" title="Mashup (web application hybrid)">Mashup</a></li>
<li><a href="Client-side_persistent_data" title="Client-side persistent data">Persistent data</a></li>
<li><a href="Web_IDL" title="Web IDL">Web IDL</a></li>
<li><a href="Dynamic_web_page#Client-side_scripting" title="Dynamic web page">Scripting</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><td colspan="2" class="navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><td class="navbox-abovebelow" colspan="2"><div id="Related_topics14">Related topics</div></td></tr><tr><td colspan="2" class="navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Frontend_and_backend" title="Frontend and backend">Frontend and backend</a></li>
<li><a href="Microservices" title="Microservices">Microservices</a>
<ul><li><a href="REST" title="REST">REST</a></li>
<li><a href="GraphQL" title="GraphQL">GraphQL</a></li></ul></li>
<li><a href="Push_technology" title="Push technology">Push technology</a></li>
<li><a href="Solution_stack" title="Solution stack">Solution stack</a></li>
<li><a href="Web_page" title="Web page">Web page</a>
<ul><li><a href="Static_web_page" title="Static web page">Static</a></li>
<li><a href="Dynamic_web_page" title="Dynamic web page">Dynamic</a></li></ul></li>
<li><a href="Web_standards" title="Web standards">Web standards</a></li>
<li><a href="Web_API_security" title="Web API security">Web API security</a></li>
<li><a href="Web_application" title="Web application">Web application</a>
<ul><li><a href="Rich_Internet_Application" title="Rich Internet Application">Rich</a></li>
<li><a href="Single-page_application" title="Single-page application">Single-page</a></li>
<li><a href="Progressive_web_app" title="Progressive web app">Progressive</a></li></ul></li>
<li><a href="Web_framework" title="Web framework">Web framework</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr></tbody></table></div></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2025-05-10" href="https://en.wikipedia.org/wiki/?title=Encrypted_Media_Extensions&amp;oldid=1289752070">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>

</body></html>